import Vue from 'vue'
import VueRouter from 'vue-router'
import login from '@/components/login.vue'
import home from '@/components/home.vue'
import welcome from '@/components/welcome.vue'
import users from '@/components/user/users.vue'
import roles from '@/components/right/roles.vue'
import rights from '@/components/right/rights.vue'
import cate from '@/components/goods/cate.vue'
import params from '@/components/goods/params.vue'
import list from '@/components/goods/list.vue'
import add from '@/components/goods/add.vue'
import order from '@/components/order/order.vue'



Vue.use(VueRouter)

const routes = [
  { path: '/', redirect:'/login'},
  { path: '/login', component: login },
  { path: '/home', component: home,
    redirect: '/welcome',
    children:[
      { path: '/welcome', component: welcome },
      { path: '/users', component: users },
      { path: '/roles', component: roles },
      { path: '/rights', component: rights },
      { path: '/categories', component: cate },
      { path: '/params', component: params },
      { path: '/goods', component: list },
      { path: '/goods/add', component: add },
      { path: '/orders', component: order },

    ]
  }

]

const router = new VueRouter({
  routes
})

// 挂载路由导航守卫
router.beforeEach((to,from,next) =>{
// to 将要访问的路径
// from 代表从那个路径跳转而来
// next 是一个函数 表示放行
//     next()放行  next('/login') 强制跳转
  if(to.path == '/login')
    return next()
  // 如果用户想要访问登陆页面直接放行，如果不是在判断是否携带token
  const tokenStr =window.sessionStorage.getItem('token')
  if(!tokenStr) return next('/login')
  next()



})


export default router
